package com.nuc.seckill.dao;

import com.nuc.seckill.base.CommonQueryBean;
import com.nuc.seckill.model.SeckillUser;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * SeckillUser数据库操作接口类
 *
 * @author spider
 */

@Repository
public interface SeckillUserDao {


    /**
     * 查询（根据主键ID查询）
     *
     * @param id id
     * @return com.nuc.seckill.model.SeckillUser
     * @author 石一歌
     * @date 2022/8/11 15:10
     */
    SeckillUser selectByPrimaryKey(@Param("id") Long id);

    /**
     * 删除（根据主键ID删除）
     *
     * @param id id
     * @return int
     * @author 石一歌
     * @date 2022/8/11 15:09
     */
    int deleteByPrimaryKey(@Param("id") Long id);

    /**
     * 添加
     *
     * @param record 记录
     * @return int
     * @author 石一歌
     * @date 2022/8/11 15:09
     */
    int insert(SeckillUser record);

    /**
     * 修改 （匹配有值的字段）
     *
     * @param record 记录
     * @return int
     * @author 石一歌
     * @date 2022/8/11 15:09
     */
    int updateByPrimaryKeySelective(SeckillUser record);

    /**
     * list分页查询
     *
     * @param record 记录
     * @param query  查询条件
     * @return java.util.List<com.nuc.seckill.model.SeckillUser>
     * @author 石一歌
     * @date 2022/8/11 15:09
     */
    List<SeckillUser> list4Page(SeckillUser record, @Param("commonQueryParam") CommonQueryBean query);

    /**
     * count查询
     *
     * @param record 记录
     * @return long
     * @author 石一歌
     * @date 2022/8/11 15:09
     */
    long count(SeckillUser record);

    /**
     * list查询
     *
     * @param record 记录
     * @return java.util.List<com.nuc.seckill.model.SeckillUser>
     * @author 石一歌
     * @date 2022/8/11 15:09
     */
    List<SeckillUser> list(SeckillUser record);

}